#include<unistd.h>
#include<fcntl.h>
#include<string.h>
#include<sys/stat.h>
#include<stdlib.h>
#include<stdio.h>
#include<errno.h>
int main(int argc,char** argv)
{
    //ls | wc -l
    //定义管道pipe
    int fd[2];
  int  ret=pipe(fd);

    if(ret==-1)
    {
        perror("pipe create fail!\n");
        }
    
    int pid=fork();
    if(pid==-1)
    {
        perror("fork fail!\n");
        exit(1);
        }else if(pid==0)
        {
            //子进程
            close(fd[1]);//关闭写端
            dup2(fd[0],STDIN_FILENO);
            execlp("wc","wc","-l",NULL);

            }else if(pid>0)
            {
                //父进程
                close(fd[0]);
                dup2(fd[1],STDOUT_FILENO);
                execlp("ls","ls",NULL);

                }
return 0;
}
